package com.briup.day08;

/**
 * 多态代码：一个父类型的引用，可以指向它的任何一个子类对象
 * 比赛
 * @author lining
 * @date 2024/1/17 14:09
 */
public class Game {

    //public void start(Ball ball){}
    //public void start(BasketBall ball){
    //public void start(FootBall ball){
    public void start(Ball ball){
        //多态：父类的引用指向子类对象
        //Ball ball = new BasketBall()
        //Ball ball = new FootBall()
        ball.play(); //使用相同代码进行执行，输出结果不同
    }

    public static void main(String[] args) {
        Game game = new Game();//表示一个比赛
        game.start(new BasketBall());//输出结果篮球
        game.start(new FootBall());//输出足球
        game.start(new Ball());//输出父类的方法

        //jdk中提供的多态的代码
        System.out.println(1);//基本数据参数类型对应的类型（重载）


        //多态的代码： Object x = new 任意类型的对象();
        System.out.println(new Student());// 学生对象信息
        System.out.println(new Teacher());// 地址值
        System.out.println(new String("abc"));//abc
        System.out.println(new Integer(100));//100

    }
}
